Autogenerated HTML docs for 36de72aa9dc3b7daf8cf2770c840f39bb0d2ae70 
diff --git a/glossary.txt b/glossary.txt new file mode 100644 index 0000000..520f4c5 --- /dev/null +++ b/glossary.txt 
@@ -0,0 +1,242 @@ +object:: +	The unit of storage in git. It is uniquely identified by +	the SHA1 of its contents. Consequently, an object can not +	be changed. + +object name:: +	The unique identifier of an object. The hash of the object's contents +	using the Secure Hash Algorithm 1 and usually represented by the 40 +	character hexadecimal encoding of the hash of the object (possibly +	followed by a white space). + +SHA1:: +	Synonym for object name. + +object identifier:: +	Synonym for object name. + +hash:: +	In git's context, synonym to object name. + +object database:: +	Stores a set of "objects", and an individial object is identified +	by its object name. The objects usually live in `$GIT_DIR/objects/`. + +blob object:: +	Untyped object, e.g. the contents of a file. + +tree object:: +	An object containing a list of file names and modes along with refs +	to the associated blob and/or tree objects. A tree is equivalent +	to a directory. + +tree:: +	Either a working tree, or a tree object together with the +	dependent blob and tree objects (i.e. a stored representation +	of a working tree). + +DAG:: +	Directed acyclic graph. The commit objects form a directed acyclic +	graph, because they have parents (directed), and the graph of commit +	objects is acyclic (there is no chain which begins and ends with the +	same object). + +index:: +	A collection of files with stat information, whose contents are +	stored as objects. The index is a stored version of your working +	tree. Truth be told, it can also contain a second, and even a third +	version of a working tree, which are used when merging. + +index entry:: +	The information regarding a particular file, stored in the index. +	An index entry can be unmerged, if a merge was started, but not +	yet finished (i.e. if the index contains multiple versions of +	that file). + +unmerged index: +	An index which contains unmerged index entries. + +cache:: +	Obsolete for: index. + +working tree:: +	The set of files and directories currently being worked on, +	i.e. you can work in your working tree without using git at all. + +directory:: +	The list you get with "ls" :-) + +revision:: +	A particular state of files and directories which was stored in +	the object database. It is referenced by a commit object. + +checkout:: +	The action of updating the working tree to a revision which was +	stored in the object database. + +commit:: +	As a verb: The action of storing the current state of the index in the +	object database. The result is a revision. +	As a noun: Short hand for commit object. + +commit object:: +	An object which contains the information about a particular +	revision, such as parents, committer, author, date and the +	tree object which corresponds to the top directory of the +	stored revision. + +parent:: +	A commit object contains a (possibly empty) list of the logical +	predecessor(s) in the line of development, i.e. its parents. + +changeset:: +	BitKeeper/cvsps speak for "commit". Since git does not store +	changes, but states, it really does not make sense to use +	the term "changesets" with git. + +clean:: +	A working tree is clean, if it corresponds to the revision +	referenced by the current head. + +dirty:: +	A working tree is said to be dirty if it contains modifications +	which have not been committed to the current branch. + +head:: +	The top of a branch. It contains a ref to the corresponding +	commit object. + +branch:: +	A non-cyclical graph of revisions, i.e. the complete history of +	a particular revision, which is called the branch head. The +	branch heads are stored in `$GIT_DIR/refs/heads/`. + +ref:: +	A 40-byte hex representation of a SHA1 pointing to a particular +	object. These may be stored in `$GIT_DIR/refs/`. + +head ref:: +	A ref pointing to a head. Often, this is abbreviated to "head". +	Head refs are stored in `$GIT_DIR/refs/heads/`. + +tree-ish:: +	A ref pointing to either a commit object, a tree object, or a +	tag object pointing to a tag or commit or tree object. + +ent:: +	Favorite synonym to "tree-ish" by some total geeks. See +	`http://en.wikipedia.org/wiki/Ent_(Middle-earth)` for an in-depth +	explanation. + +tag object:: +	An object containing a ref pointing to another object, which can +	contain a message just like a commit object. It can also +	contain a (PGP) signature, in which case it is called a "signed +	tag object". + +tag:: +	A ref pointing to a tag or commit object. In contrast to a head, +	a tag is not changed by a commit. Tags (not tag objects) are +	stored in `$GIT_DIR/refs/tags/`. A git tag has nothing to do with +	a Lisp tag (which is called object type in git's context). +	A tag is most typically used to mark a particular point in the +	commit ancestry chain. + +merge:: +	To merge branches means to try to accumulate the changes since a +	common ancestor and apply them to the first branch. An automatic +	merge uses heuristics to accomplish that. Evidently, an automatic +	merge can fail. + +octopus:: +	To merge more than two branches. Also denotes an intelligent +	predator. + +resolve:: +	The action of fixing up manually what a failed automatic merge +	left behind. + +rewind:: +	To throw away part of the development, i.e. to assign the head to +	an earlier revision. + +rebase:: +	To clean a branch by starting from the head of the main line of +	development ("master"), and reapply the (possibly cherry-picked) +	changes from that branch. + +repository:: +	A collection of refs together with an object database containing +	all objects, which are reachable from the refs, possibly accompanied +	by meta data from one or more porcelains. A repository can +	share an object database with other repositories. + +git archive:: +	Synonym for repository (for arch people). + +file system:: +	Linus Torvalds originally designed git to be a user space file +	system, i.e. the infrastructure to hold files and directories. +	That ensured the efficiency and speed of git. + +alternate object database:: +	Via the alternates mechanism, a repository can inherit part of its +	object database from another object database, which is called +	"alternate". + +reachable:: +	An object is reachable from a ref/commit/tree/tag, if there is a +	chain leading from the latter to the former. + +chain:: +	A list of objects, where each object in the list contains a +	reference to its successor (for example, the successor of a commit +	could be one of its parents). + +fetch:: +	Fetching a branch means to get the branch's head ref from a +	remote repository, to find out which objects are missing from +	the local object database, and to get them, too. + +pull:: +	Pulling a branch means to fetch it and merge it. + +push:: +	Pushing a branch means to get the branch's head ref from a remote +	repository, find out if it is an ancestor to the branch's local +	head ref is a direct, and in that case, putting all objects, which +	are reachable from the local head ref, and which are missing from +	the remote repository, into the remote object database, and updating +	the remote head ref. If the remote head is not an ancestor to the +	local head, the push fails. + +pack:: +	A set of objects which have been compressed into one file (to save +	space or to transmit them efficiently). + +pack index:: +	The list of identifiers, and other information, of the objects in a +	pack, to assist in efficiently accessing the contents of a pack.  + +core git:: +	Fundamental data structures and utilities of git. Exposes only +	limited source code management tools. + +plumbing:: +	Cute name for core git. + +porcelain:: +	Cute name for programs and program suites depending on core git, +	presenting a high level access to core git. Porcelains expose +	more of a SCM interface than the plumbing. + +object type: +	One of the identifiers "commit","tree","tag" and "blob" describing +	the type of an object. + +SCM:: +	Source code management (tool). + +dircache:: +	You are *waaaaay* behind. +